home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / sbin / update-info-dir < prev    next >
Text File  |  2009-10-27  |  975b  |  52 lines

  1. #!/bin/bash
  2. # update-info-dir
  3. # create a dir file from all installed info files
  4. # Copyright 2009 Norbert Preining
  5. # GPLv2
  6.  
  7. INFODIR=/usr/share/info
  8.  
  9. set -e
  10.  
  11. if [ -n "$1" ] ; then
  12.   INFODIR="$1"
  13. fi
  14.  
  15. if [ ! -d "$INFODIR" ] ; then
  16.   echo "Not a directory: $INFODIR." >&2
  17.   exit 1
  18. fi
  19.  
  20. if [ -r "$INFODIR/dir" ] ; then
  21.   rm -f "$INFODIR/dir.old"
  22.   cp $INFODIR/dir $INFODIR/dir.old
  23. fi
  24.  
  25. # we have to remove the dir file not make ginstall-info being surprised
  26. rm -f "$INFODIR/dir"
  27.  
  28. errors=0
  29. find "$INFODIR" -type f | while read file ; do
  30.   case $file in
  31.     */dir|*/dir.gz|*/dir.old|*/dir.old.gz|*-[0-9]|*-[0-9].gz|*-[1-9][0-9]|*-[1-9][0-9].gz|*.png)
  32.       # these files are ignored
  33.       continue
  34.       ;;
  35.     *)
  36.       ginstall-info "$file" "$INFODIR/dir" || {
  37.         errors=$[errors+1]
  38.       }
  39.       ;;
  40.   esac
  41. done
  42.  
  43. if [ $errors -gt 0 ] ; then
  44.   exec >&2
  45.   echo
  46.   echo "Updating the index of info documentation produced $errors errors."
  47. fi
  48.  
  49. exit 0
  50.  
  51. # vim:set expandtab tabstop=2: #
  52.